/**
 * 响应拦截
 * @param {Object} http 
 */
module.exports = (vm) => {
  uni.$u.http.interceptors.response.use((res) => {
    /* 对响应成功做点什么 可使用async await 做异步操作*/
    // console.log(res)
    const resData = res.data || res
    if (resData.status == 200) {
      vm.$store.commit('commonSet', {
        key: 'tokenInvalidFlag',
        value: false
      })
      // 请求成功返回
      return resData
    } else if (resData.status == 401 || resData.status == 403 || resData.status == 201) {
      if (!vm.$store.state.tokenInvalidFlag) {
        uni.showToast({
          title:resData.msg || '登录失效请重新登录',
          icon:'none'
        })
        //登录验证失败或登录失效
        vm.$store.commit('setUserInfo', {})
        vm.$store.commit('setToken', '')
        vm.$store.commit('commonSet', {
          key: 'tokenInvalidFlag',
          value: true
        })
        // vm.$u.route({
        //   url: '/pages/main/login/login',
        //   params: {
        //     back: true
        //   }
        // })
		uni.reLaunch({
			url:'/pages/main/login/login'
		})
      }
    } else if (resData.status == 0) {
      //微信登录用户未注册用户，引导用户手机号注册
    } else {
      //其他错误
      vm.$u.toast(resData.msg || '未知错误');
    }
    return resData
  }, (response) => {
    /*  对响应错误做点什么 （statusCode !== 200）*/
    console.log('请求错误', response)
    return Promise.reject(response)
  })
}
